From e71d76cb8bcb7525227c782fa09dfc64ca988e8c Mon Sep 17 00:00:00 2001 From: Keir Fraser Date: Mon, 25 Feb 2008 09:07:24 +0000 Subject: [PATCH] svm: Fix stupid typo in svm_set_interrupt_shadow(). Signed-off-by: Christoph Egger svm: Also return STI *and* MOV-SS blocking from svm_get_interrupt_shadow(). Signed-off-by: Keir Fraser --- xen/arch/x86/hvm/svm/svm.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/xen/arch/x86/hvm/svm/svm.c b/xen/arch/x86/hvm/svm/svm.c index f6254e1949..ba934c1399 100644 --- a/xen/arch/x86/hvm/svm/svm.c +++ b/xen/arch/x86/hvm/svm/svm.c @@ -369,14 +369,15 @@ static void svm_fpu_leave(struct vcpu *v) static unsigned int svm_get_interrupt_shadow(struct vcpu *v) { struct vmcb_struct *vmcb = v->arch.hvm_svm.vmcb; - return (vmcb->interrupt_shadow ? HVM_INTR_SHADOW_MOV_SS : 0); + return (vmcb->interrupt_shadow ? + (HVM_INTR_SHADOW_MOV_SS|HVM_INTR_SHADOW_STI) : 0); } static void svm_set_interrupt_shadow(struct vcpu *v, unsigned int intr_shadow) { struct vmcb_struct *vmcb = v->arch.hvm_svm.vmcb; - vmcb->interrupt_shadow = !!(vmcb->interrupt_shadow & - (HVM_INTR_SHADOW_MOV_SS|HVM_INTR_SHADOW_STI)); + vmcb->interrupt_shadow = + !!(intr_shadow & (HVM_INTR_SHADOW_MOV_SS|HVM_INTR_SHADOW_STI)); } static int svm_guest_x86_mode(struct vcpu *v) -- 2.30.2